Add --enable-installed-tests, use it for reftests
authorColin Walters <walters@verbum.org>
Thu, 9 May 2013 16:38:08 +0000 (18:38 +0200)
committerBenjamin Otte <otte@redhat.com>
Thu, 9 May 2013 17:09:49 +0000 (19:09 +0200)
See https://live.gnome.org/GnomeGoals/InstalledTests

https://bugzilla.gnome.org/show_bug.cgi?id=699601

configure.ac
tests/reftests/Makefile.am
tests/reftests/reftests.test.in [new file with mode: 0644]

index 00e8cf060203bc6d95f30d9e571830e10cb813ec..af81c8366f6f28d025f07b4e614802558579c510 100644 (file)
@@ -255,6 +255,11 @@ AC_ARG_ENABLE(rebuilds,
               [AS_HELP_STRING([--disable-rebuilds],
                               [disable all source autogeneration rules])],,
               [enable_rebuilds=yes])
+AC_ARG_ENABLE(installed_tests,
+              AS_HELP_STRING([--enable-installed-tests],
+                             [Install test programs (default: no)]),,
+              [enable_installed_tests=no])
+AM_CONDITIONAL(BUILDOPT_INSTALL_TESTS, test x$enable_installed_tests = xyes)
 
 AC_ARG_ENABLE(gtk2-dependency,
               [AS_HELP_STRING([--enable-gtk2-dependency],
index 5431faab92041f48758c7c86bde5caa1d76019ee..793a0d6cc2da3ec6e7723a47276d6e34c0bc05a9 100644 (file)
@@ -30,7 +30,7 @@ EXTRA_DIST += \
        border-image-repeat.sh \
        $(NULL)
 
-EXTRA_DIST += \
+testdata = \
        background-area.css \
        background-area.ref.ui \
        background-area.ui \
@@ -279,4 +279,25 @@ EXTRA_DIST += \
        window-default-size.ui \
        $(NULL)
 
+if BUILDOPT_INSTALL_TESTS
+insttestdir=$(pkglibexecdir)/installed-tests
+insttest_PROGRAMS = gtk-reftest
+
+reftestdir = $(insttestdir)/reftests
+reftest_DATA = $(testdata)
+
+substitutions = \
+       -e s,@pkglibexecdir\@,$(pkglibexecdir),g \
+       $(NULL)
+
+reftests.test: reftests.test.in Makefile
+       $(AM_V_GEN) sed $(substitutions) $< > $@.tmp && mv $@.tmp $@
+
+EXTRA_DIST += \
+       reftests.test.in
+
+testmetadir = $(datadir)/installed-tests/$(PACKAGE)
+testmeta_DATA = reftests.test
+endif
 -include $(top_srcdir)/git.mk
diff --git a/tests/reftests/reftests.test.in b/tests/reftests/reftests.test.in
new file mode 100644 (file)
index 0000000..0ab2227
--- /dev/null
@@ -0,0 +1,3 @@
+[Test]
+Exec=/bin/sh -c "@pkglibexecdir@/installed-tests/gtk-reftest -k --verbose --output $(pwd) --directory @pkglibexecdir@/installed-tests/reftests"
+Type=session